Add overview and basic usage to README#76
Conversation
Replace the placeholder "under development" note with production-grade documentation: a project overview, a "How it works" pipeline summary, Gradle plugin setup, a plugin-authoring example, a modules table, and reference links. Closes #72. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Updates the project’s public-facing documentation to describe Spine Compiler’s intended v2.0.0 API and basic Gradle usage, and bumps the snapshot version + regenerated dependency reports to keep license reporting consistent.
Changes:
- Replace the placeholder
README.mdwith overview, workflow explanation, Gradle setup, and plugin authoring guidance. - Bump
compilerVersionsnapshot (.056→.057) and propagate it into generated dependency report artifacts.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
README.md |
Adds production-grade overview and usage docs (Gradle plugin setup, DSL configuration, plugin authoring). |
version.gradle.kts |
Increments the project snapshot version used for publishing/tests. |
docs/dependencies/pom.xml |
Updates generated dependency-report POM version to match the bumped snapshot. |
docs/dependencies/dependencies.md |
Updates generated dependency report headers/timestamps for the bumped snapshot. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ddbe26442e
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Apply the `java` plugin instead of `kotlin("jvm")` in the Getting started
example so Java-only projects are not implied to require Kotlin, and note
that either language works. Clarify that the `compiler { }` DSL block is
nested inside the `spine { }` extension.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Rename ProtoData references to Spine Compiler in `tests/README.md` and
`gradle-plugin/README.md`. Identifiers are verified against the source:
the `compiler { }` extension, the `spineCompiler` configuration, the
`LaunchSpineCompiler` task type, and the `io.spine.compiler` plugin id.
Also bring `gradle-plugin/README.md` back in line with the current API:
- use the real `Plugin` package `io.spine.tools.compiler.plugin.Plugin`;
- document the real DSL options (`plugins`, `subDirs`, `outputBaseDir`)
via the `spine { compiler { } }` block, dropping options that no
longer exist;
- fix the Maven coordinates to `io.spine.tools:compiler-gradle-plugin`
and `io.spine.tools:compiler-api`.
Fix a typo in `tests/README.md` and minor prose issues.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The Compiler does not auto-apply the Protobuf Gradle Plugin; `Plugin.kt`
fails fast when `com.google.protobuf` is absent. Restore `id("com.google.protobuf")`
in the plugins block and state the requirement, matching `gradle-plugin/README.md`
and the code. Also drops a stray `.:` typo.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Replace the unresolved `$version` reference (and the not-yet-published `2.0.0`) in the Getting started and plugin-authoring snippets with the `<Compiler version>` placeholder, matching `gradle-plugin/README.md`. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The per-module breakdown is architecture detail, not user-facing documentation, so the `## Modules` section is dropped from `README.md`. `docs/project.md` already lists every module; this folds the README's unique detail — the `compiler-` artifact prefix and the `io.spine.compiler` plugin ID — into that doc's Architecture section. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Address PR review: add the required Protobuf Gradle Plugin (with a
`<Protobuf plugin version>` placeholder) to the `plugins {}` examples in
both READMEs so they work when copied, and replace the undefined
`moon.phase` example in `gradle-plugin/README.md` with a comment.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #76 +/- ##
=========================================
Coverage 75.60% 75.60%
Complexity 677 677
=========================================
Files 203 203
Lines 3947 3947
Branches 390 390
=========================================
Hits 2984 2984
Misses 845 845
Partials 118 118 🚀 New features to boost your workflow:
|
Summary
Replaces the placeholder
README.md— which only said the project was "underdevelopment right now. Proceed with caution." — with production-grade
documentation for the Compiler's v2.0.0 API.
New content:
protoc→ code-generation request →events → views/policies → renderers.
applying the
io.spine.compilerGradle plugin.spine { compiler { plugins(…) } }DSL and the
spineCompilerclasspath configuration.Renderer/Pluginexample and theio.spine.tools:compiler-apicoordinate.The plugin ID, DSL shape, API identifiers (
Plugin,Renderer,SourceFileSet),artifact coordinates, and the JDK version were all verified against the sources
(
api/,gradle-api/,gradle-plugin/,buildSrc/) rather than assumed. Versionreferences in the snippets use a
<Compiler version>placeholder.Closes #72.
README rename consolidated from another branch
The Spine Compiler rename and current-API refresh of the secondary READMEs was
done on a separate branch —
claude/ecstatic-ride-7f0e7c, commitdfec572c7b("Update READMEs for the Spine Compiler rename and current API") — and folded
into this PR via cherry-pick (
f21d34dd02), so the related documentation landsin a single review instead of a second PR:
tests/README.md— "ProtoData" → "Spine Compiler" naming for theintegration-test project, plus a typo fix.
gradle-plugin/README.md— rewritten for the current API: thespine { compiler { } }DSL, the configuration table (plugins,subDirs,outputBaseDir), source-set task naming (launch…SpineCompiler), and theProtobuf Gradle Plugin requirement.
Dependency refresh
Refreshes the
CoreJvmSpine dependency (spine-core/spine-client/spine-server) from2.0.0-SNAPSHOT.380to.381, the latest publishedsnapshot.
Version & dependency reports
Per the repository version policy, this branch bumps
version.gradle.kts2.0.0-SNAPSHOT.056→.057and regenerates the dependency reports(
docs/dependencies/pom.xml,docs/dependencies/dependencies.md) so theLicense Reportscheck passes.Verification
review-docsandspine-code-review: APPROVE — no findings../gradlew build -x integrationTest: BUILD SUCCESSFUL, including with theCoreJvmbump.integrationTestis excluded locally — it exercises theconsumer composite build (unaffected by docs/version/dependency-refresh
changes) and this checkout has a broken
tests/symlink; CI runs the fullsuite.
🤖 Generated with Claude Code